Automatic Loop Parallelization: An Abstract Interpretation Approach
نویسنده
چکیده
This paper presents an abstract interpretation to support the automatic parallelization of iterative constructs. The analysis approximates the range of values of any array subscript by integrating an interval analysis with one returning a set of simple linear restraints among program variables. To reduce the complexity of the analysis, a general methodology has been adopted that defines two different abstract domains, i.e. the interval domain and the bisector domain. The domains are then combined through the reduced product operator. A static tool implementing the analysis has been automatically generated through PAG. The results of the analysis of some kernel loops of the Perfect Club Benchmark are shown.
منابع مشابه
Symbolic Analysis: A Basis for Parallelization, Optimization, and Scheduling of Programs
This paper presents an abstract interpretation framework for parallelizing compilers. Within this framework, symbolic analysis is used to solve various ow analysis problems in a uniied way. Symbolic analysis also serves as a basis for code generation optimizations and a tool for derivation of computation cost estimates. A loop scheduling strategy that utilizes symbolic timing information is als...
متن کاملAbstract Specialization and Its Application to Program Parallelization
Specialization and its Application to Program Parallelization Germán Puebla and Manuel Hermenegildo {german,herme}@fi.upm.es Department of Computer Science Technical University of Madrid (UPM) Abstract. Program specialization optimizes programs for known valúes of the input. It is often the case that the set of possible input valúes is unknown, or this set is infinite. However, a form of specia...
متن کاملEffectiveness of Abstract Interpretation in Automatic Parallelization: A Case Study in Logic Programming
We report on a detailed study of the application and effectiveness of program analysis based on abstract interpretation to automatic program parallelization. We study the case of parallelizing logic programs using the notion of strict independence. We first propose and prove correct a methodology for the application in the parallelization task of the information inferred by abstract interpretat...
متن کاملStatic Heap Analysis for Automatic Parallelization
Modeling the evolution of the state of program memory during program execution is critical to many parallelization techniques. Current memory analysis techniques either provide very accurate information but run prohibitively slowly or produce very conservative results. An approach based on abstract interpretation is presented for analyzing programs at compile time, which can accurately determin...
متن کاملSymbolic Program Analysis and Optimization for Parallelizing Compilers
A program ow analysis framework is proposed for parallelizing compilers. Within this framework, symbolic analysis is used as an abstract interpretation technique to solve many of the ow analysis problems in a uniied way. Some of these problems are constant propagation , global forward substitution, detection of loop invariant computations, and induction variable substitution. The solution space...
متن کامل